.xbottom {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 24rpx;
	padding-bottom: calc(24rpx + constant(safe-area-inset-bottom));
	padding-bottom: calc(24rpx + env(safe-area-inset-bottom));
	z-index: 50;
	background-color: #fff;
}
.xbottomblock {
	padding-bottom: calc(24rpx + constant(safe-area-inset-bottom));
	padding-bottom: calc(24rpx + env(safe-area-inset-bottom));
}
.xmian {
	background-color: #fff;
	width: 100vw;
	height: 95vh;
}
.xflex1 {
	flex: 1;
}
.xflex-x {
	display: flex;
	flex-direction: row;
	align-items: center;
}

.xflex-y {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.xflex-x-center {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}

.xflex-y-center {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.xflex-x-between {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

.xflex-y-between {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

.xflex-x-around {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-around;
	flex-wrap: wrap;
}

.xflex-y-around {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-around;
	flex-wrap: wrap;
}

.xbs {
	box-sizing: border-box;
}

.xm24-32 {
	margin: 24rpx 32rpx;
}
.xm20-25 {
	margin: 20rpx 25rpx;
}

.xmt24 {
	margin-top: 24rpx;
}
.xmr12 {
	margin-right: 12rpx;
}
.xml12 {
	margin-left: 12rpx;
}
.xml24 {
	margin-left: 24rpx;
}
.xmr24 {
	margin-right: 24rpx;
}
.xmb24 {
	margin-bottom: 24rpx;
}

.xmt32 {
	margin-top: 32rpx;
}
.xml32 {
	margin-left: 32rpx;
}
.xmr32 {
	margin-right: 32rpx;
}
.xmb32 {
	margin-bottom: 32rpx;
}

.xm32-24 {
	margin: 32rpx 24rpx;
}

.xm24 {
	margin: 24rpx;
}

.xm32 {
	margin: 32rpx;
}
.xmr40 {
	margin-right: 40rpx;
}
.xmb40 {
	margin-bottom: 40rpx;
}
.xml40 {
	margin-left: 40rpx;
}
.xmt10 {
	margin-top: 10rpx;
}
.xmr10 {
	margin-right: 10rpx;
}
.xmb10 {
	margin-bottom: 10rpx;
}
.xml10 {
	margin-left: 10rpx;
}

.xmt12 {
	margin-top: 12rpx;
}
.xmr12 {
	margin-right: 12rpx;
}
.xmb12 {
	margin-bottom: 12rpx;
}
.xml12 {
	margin-left: 12rpx;
}

.xmt20 {
	margin-top: 20rpx;
}
.xmr20 {
	margin-right: 20rpx;
}
.xmb20 {
	margin-bottom: 20rpx;
}
.xml20 {
	margin-left: 20rpx;
}

.xmt50 {
	margin-top: 50rpx;
}
.xmr50 {
	margin-right: 50rpx;
}
.xmb50 {
	margin-bottom: 50rpx;
}
.xml50 {
	margin-left: 50rpx;
}

.xmt60 {
	margin-top: 60rpx;
}
.xmr60 {
	margin-right: 60rpx;
}
.xmb60 {
	margin-bottom: 60rpx;
}
.xml60 {
	margin-left: 60rpx;
}
.xmt40 {
	margin-top: 40rpx;
}


.xp24-32 {
	padding: 24rpx 32rpx;
}
.xp20-25 {
	padding: 20rpx 25rpx;
}

.xp32-24 {
	padding: 32rpx 24rpx;
}

.xp26-30 {
	padding: 26rpx 30rpx;
}
.xp24 {
	padding: 24rpx;
}

.xp32 {
	padding: 32rpx;
}
.xpt24 {
	padding-top: 24rpx;
}
.xpl24 {
	padding-left: 24rpx;
}
.xpr24 {
	padding-right: 24rpx;
}
.xpb24 {
	padding-bottom: 24rpx;
}

.xpt25 {
  padding-top: 25rpx;
}

.xpl25 {
  padding-left: 25rpx;
}

.xpr25 {
  padding-right: 25rpx;
}

.xpb25 {
  padding-bottom: 25rpx;
}

.xpt26 {
  padding-top: 26rpx;
}

.xpl26 {
  padding-left: 26rpx;
}

.xpr26 {
  padding-right: 26rpx;
}

.xpb26 {
  padding-bottom: 26rpx;
}

.xpt27 {
  padding-top: 27rpx;
}

.xpl27 {
  padding-left: 27rpx;
}

.xpr27 {
  padding-right: 27rpx;
}

.xpb27 {
  padding-bottom: 27rpx;
}

.xpt28 {
  padding-top: 28rpx;
}

.xpl28 {
  padding-left: 28rpx;
}

.xpr28 {
  padding-right: 28rpx;
}

.xpb28 {
  padding-bottom: 28rpx;
}

.xpt29 {
  padding-top: 29rpx;
}

.xpl29 {
  padding-left: 29rpx;
}

.xpr29 {
  padding-right: 29rpx;
}

.xpb29 {
  padding-bottom: 29rpx;
}

.xpt30 {
  padding-top: 30rpx;
}

.xpl30 {
  padding-left: 30rpx;
}

.xpr30 {
  padding-right: 30rpx;
}

.xpb30 {
  padding-bottom: 30rpx;
}

.xpt31 {
  padding-top: 31rpx;
}

.xpl31 {
  padding-left: 31rpx;
}

.xpr31 {
  padding-right: 31rpx;
}

.xpb31 {
  padding-bottom: 31rpx;
}

.xpt32 {
	padding-top: 32rpx;
}
.xpl32 {
	padding-left: 32rpx;
}
.xpr32 {
	padding-right: 32rpx;
}
.xpb32 {
	padding-bottom: 32rpx;
}
.xpt10 {
	padding-top: 10rpx;
}
.xpl10 {
	padding-left: 10rpx;
}
.xpr10 {
	padding-right: 10rpx;
}
.xpb10 {
	padding-bottom: 10rpx;
}

.xpt40 {
	padding-top: 40rpx;
}
.xpl40 {
	padding-left: 40rpx;
}
.xpr40 {
	padding-right: 40rpx;
}
.xpb40 {
	padding-bottom: 40rpx;
}


.xpt36 {
	padding-top: 36rpx;
}

.xpb36 {
	padding-bottom: 36rpx;
}
.xpl36 {
	padding-left: 36rpx;
}
.xpr36 {
	padding-right: 36rpx;
}


.xtext-between {
	display: inline-block;
	text-align: justify;
	/*  这行必加，兼容ie浏览器 */
	text-justify: distribute-all-lines; 
	text-align-last: justify;
}


/* 去除按钮默认样式 */
.xbutton :focus,
.xbutton:active:focus,
.xbutton.active:focus,
.xbutton.focus,
.xbutton:active.focus,
.xbutton.active.focus {
  outline: none;
  border-color: transparent; 
  box-shadow:none;
}

.xbutton {
	outline:none;
	 /*清除默认背景 */
	 background: transparent !important;
	border-radius: 0rpx;
	padding: 0rpx;
	margin: 0rpx;
	border: 0;
	display: inline-block;
	line-height: 1;
}
.xbutton::after {
  /*button的边框样式是通过::after方式实现的*/
  border: none;
}

 /* 超出省略 */
 .clamp {
     overflow: hidden;
     text-overflow: ellipsis;
     white-space: nowrap;
     display: block;
 }
 .clamp2{
     overflow: hidden;
     text-overflow: ellipsis;
     display: -webkit-box;
     -webkit-line-clamp: 2;
     -webkit-box-orient: vertical;
 }
 .clamp3{
	 overflow: hidden;
	 text-overflow: ellipsis;
	 display: -webkit-box;
	 -webkit-line-clamp: 3;
	 -webkit-box-orient: vertical;
 }
 .pr {
	 position: relative;
 }
 .pa {
	 position: absolute;
 }
.xmt12 {
	 margin-top: 12rpx;
 }
 .xfz18 {
 	font-size: 18rpx;
 }
 .xfz20 {
	font-size: 20rpx;
 }
 .xfz22 {
 	font-size: 22rpx;
 }
 .xfz24 {
	font-size: 24rpx;
 }
 .xfz26 {
 	font-size: 26rpx;
 }
 .xfz30 {
	 font-size: 30rpx;
 }
 .xfz32 {
	font-size: 32rpx;
 }
 .xfz36 {
 	font-size: 36rpx;
 }
 .xfz28 {
	 font-size: 28rpx;
 }
 .xc0 {
	color: #000;
}
 .xc1 {
	color: #111;
}
 .xc2 {
	color: #222;
}
 .xc3 {
	 color: #333;
 }
 .xc6 {
 	 color: #666;
 }
 .xc9 {
 	 color: #999;
 }
 .xc90{
	 color: #909090;
 }
 .xcprice {
	 color: #F61D08;
 }
 .xcf{
 	 color: #fff;
 }
 .xfwb {
	 font-weight: bold;
 }
 .xfw400 {
 	font-weight: 400;
 }
 .xfw500 {
	font-weight: 500;
 }
 .xfw600 {
 	font-weight: 600;
 }
 
 .xbb8D {
	 border-bottom: 1rpx solid #D8D8D8;
 }
 .xbbee{
 	 border-bottom: 1rpx solid #eee;
 }
 .xtar {
	 text-align: right;
 }
 
 .xai {
	 align-items: normal;
 }
 .xjc {
	 justify-content: normal;
 }
 .xbgf {
	background-color: #fff;
 }
.w10 { width: 10%; }  
.w20 { width: 20%; }  
.w30 { width: 30%; }  
.w40 { width: 40%; }  
.w50 { width: 50%; }  
.w60 { width: 60%; }  
.w70 { width: 70%; }  
.w80 { width: 80%; }  
.w90 { width: 90%; }  
.w100 { width: 100%; }

.h10 { height: 10%; }  
.h20 { height: 20%; }  
.h30 { height: 30%; }  
.h40 { height: 40%; }  
.h50 { height: 50%; }  
.h60 { height: 60%; }  
.h70 { height: 70%; }  
.h80 { height: 80%; }  
.h90 { height: 90%; }  
.h100 { height: 100%; }

.br20 {
	border-radius: 20rpx;
}
